__max_num_config_instances: &max_num_config_instances 2

module_name: battery_status

parameters:
    - group: Battery Calibration
      definitions:
        BAT${i}_V_DIV:
            description:
                short: Battery ${i} voltage divider (V divider)
                long: |
                    This is the divider from battery ${i} voltage to ADC voltage.
                    If using e.g. Mauch power modules the value from the datasheet
                    can be applied straight here. A value of -1 means to use
                    the board default.

            type: float
            decimal: 8
            reboot_required: true
            num_instances: *max_num_config_instances
            instance_start: 1
            default: [-1.0, -1.0]

        BAT${i}_A_PER_V:
            description:
                short: Battery ${i} current per volt (A/V)
                long: |
                    The voltage seen by the ADC multiplied by this factor
                    will determine the battery current. A value of -1 means to use
                    the board default.

            type: float
            decimal: 8
            reboot_required: true
            num_instances: *max_num_config_instances
            instance_start: 1
            default: [-1.0, -1.0]

        BAT${i}_V_CHANNEL:
            description:
                short: Battery ${i} Voltage ADC Channel
                long: |
                    This parameter specifies the ADC channel used to monitor voltage of main power battery.
                    A value of -1 means to use the board default.

            type: int32
            reboot_required: true
            num_instances: *max_num_config_instances
            instance_start: 1
            default: [-1, -1]

        BAT${i}_I_CHANNEL:
            description:
                short: Battery ${i} Current ADC Channel
                long: |
                    This parameter specifies the ADC channel used to monitor current of main power battery.
                    A value of -1 means to use the board default.

            type: int32
            reboot_required: true
            num_instances: *max_num_config_instances
            instance_start: 1
            default: [-1, -1]